Managing data storage media and multiple cartridge memories of a data storage cartridge

ABSTRACT

A data storage cartridge comprises data storage media configured to store data for read and/or write access, wherein the data may be arranged in a plurality of partitions; and a plurality of cartridge memories. A control system, for example of a data storage drive, is configured to allocate at least portions of capacity of the data storage media to cartridge memories of the data storage cartridge; and to provide information defining the allocated portions of capacity to the cartridge memories. Each of the cartridge memories may have a separate user and thus provide access for that user to separate partitions.

CROSS REFERENCE TO RELATED APPLICATIONS

The present Application is a Divisional of parent application Ser. No.11/367,058, filed Mar. 3, 2006 now U.S. Pat. No. 7,660,063. Reference ismade to commonly assigned U.S. application Ser. No. 11/367,686 filed oneven date therewith relating to a data storage cartridge having aplurality of cartridge memories, now U.S. Pat. No. 7,375,910.

FIELD OF THE INVENTION

The present invention relates to data storage cartridges which comprisedata storage media, and, more particularly, to managing data storagecartridges having a cartridge memory.

BACKGROUND OF THE INVENTION

Data storage cartridges comprise data storage media such as magnetictape, for example wound on at least one reel; such as optical disk, forexample, CD, DVD, HD-DVD, other optical disk media; hard disk drive;floppy disk; flash memory; etc.; as are known to those of skill in theart. In many instances the data storage cartridges additionally comprisea cartridge memory. The cartridge memory may comprise a rewritablememory, or a write once memory, or a rewritable memory having a portionthereof which is protected to be write once. The memory may be operatedby a processor. Further, the cartridge memory may comprise acommunication interface for communicating externally of the data storagecartridge. The communication interface may have an antenna foraccomplishing the external communication. The cartridge memory may bepositioned within the data storage cartridge so as to orient the antennato allow access by an external interface, for example, of a data storagedrive which is also adapted to read and/or write data with respect tothe data storage media. Additionally, the cartridge memory may bepositioned to also be read by other external interfaces, for example, ofa picker of an automated data storage library, the library arranged totransport the data storage cartridge between storage shelves and one ormore data storage drives. The cartridge memory may comprise an internalpower source, such as a battery, or may receive power through thecommunication interface, or a power interface, as is known to those ofskill in the art. Typical capacities of the data storage media allowsthe media to be partitioned.

Data storage drives read and write data with respect to the data storagemedia, and may provide an interface to read and/or write informationwith respect to a cartridge memory of the data storage cartridge.

SUMMARY OF THE INVENTION

The present invention comprises methods, computer program products, datastorage drives, and control systems configured to provide a service ofallocating portions of capacity of data storage media of a data storagecartridge, where the data storage cartridge comprises a plurality ofcartridge memories.

In one embodiment, a data storage drive that is configured to read andto write information with respect to data storage media, and to read andto write information with respect to cartridge memories, all of a datastorage cartridge, comprises a read/write system configured to read andto write information with respect to the data storage media; a memoryinterface configured to read and to write information with respect tothe cartridge memories; and a control system configured to communicatewith the read/write system; communicate with the memory interface; andoperate the data storage drive.

In accordance with the present invention, the control system isconfigured to allocate at least portions of capacity of data storagemedia of a data storage cartridge to cartridge memories of the datastorage cartridge; and to provide information defining the allocatedportions of capacity to the cartridge memories.

In a further embodiment, the control system allocates access to thecartridge memories to separate users.

In another embodiment the control system determines whether at least oneadditional unallocated portion of the capacity of the data storage mediais available; and in response to request, allocates at least anadditional portion of the available capacity of the data storage mediato a cartridge memory.

In a further embodiment, the portions of capacity of the data storagemedia of the data storage cartridge comprise logical partitions of thedata storage media.

In another embodiment, the portions of capacity of the data storagemedia of the data storage cartridge comprise physical partitions of thedata storage media.

For a fuller understanding of the present invention, reference should bemade to the following detailed description taken in conjunction with theaccompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an isometric view of a data storage cartridge with the topportion of the container removed, the cartridge having a plurality ofcartridge memories;

FIG. 2 is a diagrammatic illustration of the data storage cartridge ofFIG. 1, with a magnetic tape data storage media;

FIG. 3 is a diagrammatic illustration of a data storage cartridge and adata storage drive;

FIG. 4 is a diagrammatic illustration of an embodiment of a cartridgememory of FIG. 1;

FIG. 5 is a diagrammatic illustration of a partitioned data storagemedia;

FIG. 6 is a diagrammatic illustration of an embodiment of the format ofthe memory system of the cartridge memory of FIG. 4; and

FIG. 7 is a flow chart depicting embodiments in accordance with thepresent invention.

DETAILED DESCRIPTION OF THE INVENTION

This invention is described in preferred embodiments in the followingdescription with reference to the Figures, in which like numbersrepresent the same or similar elements. While this invention isdescribed in terms of the best mode for achieving this invention'sobjectives, it will be appreciated by those skilled in the art thatvariations may be accomplished in view of these teachings withoutdeviating from the spirit or scope of the invention.

Referring to FIGS. 1 and 2, an embodiment of a data storage cartridge100 comprises a container 101, such as a cartridge shell which maycomprise one or more parts, a cartridge door 102 which may be opened,for example by a data storage drive, to gain access to data storagemedia 105, such as a magnetic tape mounted on a tape reel 106. In thecase of a magnetic tape, a cartridge brake release button 103 may beprovided to allow the tape reel 106 to freely rotate once the cartridge100 is loaded into a data storage drive. One example of a magnetic tapecartridge comprises a cartridge based on LTO (Linear Tape Open)technology. Another example of a data storage cartridge comprises theIBM® 3592 magnetic tape data storage cartridge.

In accordance with the present invention, a plurality of cartridgememories 104A, 104B, 104C, 104D and 104E are provided. Each of thecartridge memories, for example, comprises a transponder having acontactless interface, which is retained in the cartridge 100, forexample, by being encapsulated by the cartridge when it is assembled.The encapsulation process is understood by those of skill in the art asapplied to a single cartridge memory.

The illustrated data storage media is a single reel magnetic tapecartridge. Magnetic tape cartridges may also comprise dual reelcartridges in which the tape is fed between reels of the cartridge.Alternatively, the data storage media may comprise any media or devicethat is capable of being mounted in or supported by a portablecartridge. Examples comprise optical disk, for example, CD, DVD, HD-DVD,other optical disk media; hard disk drive; floppy disk; flash memory;etc.; as are known to those of skill in the art.

Referring to FIG. 3, a magnetic tape drive 115 is illustrated, in whicha data storage cartridge 100 (diagrammatically illustrated) is loaded.One example of a magnetic tape drive in which the present invention maybe employed is the IBM 3580 Ultrium magnetic tape drive based on LTOtechnology, with microcode, etc., to perform desired operations withrespect to a magnetic tape cartridge 100. In the instant example, themagnetic tape 105 is wound on a reel 106 in the cartridge 100, and, whenloaded in the magnetic tape drive 115, is fed between the cartridge reeland a take up reel 116 in the magnetic tape drive.

The magnetic tape drive comprises a memory interface 117 for readinginformation from, and/or writing information to, one or more of thecartridge memories 104A, 104B, 104C, 104D and 104E of the magnetic tapecartridge 100, for example, in a contactless manner.

A read/write system is provided for reading and writing information tothe data storage media, such as magnetic tape 105, and, for example, maycomprise a read/write head system 118 with a servo system for moving thehead laterally of the magnetic tape 105, a read/write servo control 119,and a drive motor system 120 which moves the magnetic tape 105 betweenthe cartridge reel 106 and the take up reel 116 and across theread/write head system 118. The read/write and servo control 119controls the operation of the drive motor system 120 to move themagnetic tape 105 across the read/write head system 118 at a desiredvelocity, and, in one example, determines the location of the read/writeand servo head system with respect to the magnetic tape 105. In oneexample, the read/write head system 118 and read/write and servo control119 employ servo signals on the magnetic tape 105 to determine thelocation of the read/write head system, and in another example, theread/write and servo control 119 employs at least one of the reels, suchas by means of a tachometer, to determine the location of the read/writeand servo head system with respect to the magnetic tape 105. Theread/write head system 118 and read/write and servo control 119 maycomprise hardware elements and may comprise any suitable form of logic,including a processor operated by software, or microcode, or firmware,or may comprise hardware logic, or a combination.

A control system 124 communicates with the memory interface 117, andcommunicates with the read/write system, e.g., at read/write and servocontrol 119. The control system 124 may comprise any suitable form oflogic, including a processor operated by software, or microcode, orfirmware, or may comprise hardware logic, or a combination.

The illustrated and alternative embodiments of data storage media andassociated drives are known to those of skill in the art.

The control system 124 typically communicates with one or more hostsystems 125, and operates the data storage drive 115 in accordance withcommands originating at a host. Alternatively, the data storage drive115 may form part of a subsystem, such as a library, and may alsoreceive and respond to commands from the subsystem.

As illustrated, the data storage drive 115 provides information to thecartridge memories 104A, 104B, 104C, 104D and 104E of the magnetic tapecartridge 100, and provides data to the magnetic tape 105 of themagnetic tape cartridge 100.

Referring to FIG. 5, a magnetic tape 105 or other data storage media maybe organized in many ways. Typically, a magnetic tape is arranged withparallel tracks, and may also be arranged with several parallelserpentine wraps of groups of parallel tracks. In one example, themagnetic tape is moved longitudinally in a first direction while thehead system reads and/or writes data with respect to one wrap, and isreversed to be moved in the opposite direction and the head system isshifted to another wrap.

In FIG. 5, the information is shown laid out as a single wrap for thepurpose of illustration. The data storage media may comprise a highlevel of capacity for storing data, and may be divided into a pluralityof partitions 127A, 127B, 127C, etc. Each of the partitions may belogical partitions that are logically organized anywhere within themagnetic tape or other the data storage media, or may be physicalpartitions that are physically separate areas, such as a group ofparallel tracks. Herein, a “physical” partition may comprise a track,group of tracks, a serpentine group of tracks, or any other arrangementor grouping of data of a magnetic tape data tracks, or specificarrangement of sequential or spaced grouping of data of an optical disk,for example, CD, DVD, HD-DVD, other optical disk media; hard disk drive;floppy disk; flash memory; etc.; as are known to those of skill in theart.

Data recorded on magnetic tape typically is in the form of “data sets”or similar arrangements of data. A single partition may comprise, forexample, hundreds or thousands of data sets. An area at or near thefront end of the magnetic tape 105 may be provided, called the“beginning of tape” (BOT) as is known to those of skill in the art. In asingle reel magnetic tape cartridge, this is the area of one or morewraps near the front end of the magnetic tape (leader block) that isloaded into the take up reel 116 of the magnetic tape drive 115 asdepicted in FIG. 3. In a dual reel magnetic tape cartridge, an area ofthe magnetic tape near the center, about halfway between one reel andthe other, is typically designated the BOT, and may comprise one or morewraps. Such a dual reel magnetic tape cartridge is also referred to as amidpoint load tape. This BOT area is typically where information aboutthe magnetic tape is kept, such as an index, and may comprise anindication of the locations of the partitions 127A, 127B, 127C, etc., ofFIG. 5 and other information about the partitions.

Referring to FIG. 4, an embodiment 104 of the cartridge memories 104A,104B, 104C, 104D and 104E comprises a communication interface 126configured to communicate externally of the data storage cartridge; anda memory system 130 configured to store information and to communicatethe information to the communication interface.

The cartridge communication interface 126 may comprise a wirelessinterface or transponder which receives power and data from, and sendsdata to, the interface 117 of the data storage drive when the datastorage cartridge 100 is mounted in the data storage drive 115. Forexample, the wireless interface 126 is an RF wireless interface. Anexample is described in U.S. Pat. No. 4,941,201. A high frequencyinductive wireless interface may also be employed, which is ofsufficiently high frequency that the magnetic storage media 105 is notadversely affected by the signal. Examples are described in U.S. Pat.Nos. 4,650,981, 4,758,836, and 3,859,624. Alternatively, the inductiveantennae for the wireless interface are shielded from the magnetic tape105.

An antenna 135 receives the RF signal from the RF interface of the datastorage drive, and coupler 136 supplies the received signal to a powerconversion circuit 140, and to a data demodulator 142. The powerconversion circuit 140 converts the received signal to a power current,supplying the current on line 144 to all of the devices in the datastorage cartridge requiring power, including the memory system 130, thedata demodulator 142, and a data modulator 145. The received signal fromantenna 135 may be encoded, and data demodulator 142 receives theincoming coded signal from coupler 136 and demodulates the signal toprovide data signals to the memory system 130. Data signals from thememory system 130 are provided to the data modulator 145 which encodesthe signals for transmission by coupler 136 and antenna 135 to the RFinterface of the data storage drive.

The memory system 130 may comprise a memory processor 137, such as logicor a microprocessor chip, for example, an Intel Pentium chip arranged tooperate in a low power environment, such as a portable computer, and anassociated nonvolatile memory 131 that is also arranged to operate in alow power environment.

The processor may have computer readable program code embodied thereinon a computer readable medium, including suitable security andencryption/decryption algorithms, and the logic for accessing andoperating the memory 131. The memory 131 may comprise a nonvolatilestorage, as is known to those of skill in the art. The nonvolatilestorage may comprise a separate chip attached to the logic ormicroprocessor 137, or may comprise a portion of the same chip. Thecomputer readable program code as embodied on a computer readable mediummay be stored in a nonvolatile internal memory of the processor 137 ormay also be stored in the nonvolatile memory 131, and loaded into theprocessor 137. Alternatively, the cartridge memory 104 may be operatedby and the nonvolatile memory 131 accessed by a control system orprocessor of the data storage drive or an associated host system.

Referring to FIG. 6, an example of the content of the cartridge memory104 of the magnetic tape cartridge 100 of FIGS. 1, 2, 3 and 4 isillustrated. One example of a cartridge memory 104 and its content isdescribed in Standard ECMA-319, June 2001, “Data Interchange on 12, 7 mm384—Track Magnetic Tape Cartridges—Ultrium-1 Format”, Annex D—LTOCartridge Memory, pp. 95-115. As one example, the cartridge memory 104is arranged in areas of various sizes with information organized into“pages”. The cartridge memory 104 may be similar to the memory andtransponder used in “smart cards” as are known to those of skill in theart. Those of skill in the art may envision additional types ofcartridge memories.

The memory 131 of the memory system 130 may, as illustrated in FIG. 6,be formatted to comprise a header 150 and various information areas 151,152. The header 150 will incorporate information about the informationareas, and about the uses of the information, and may incorporatespecific identification and security information.

In accordance with one embodiment of the present invention, the memorysystem 130 is formatted to allow association with at least one of theplurality of partitions 127A, 127B, 127C, etc. of the data storagemedia. For example, information area 151 of the memory system ofcartridge memory 104C may be associated with partition 127C of FIG. 5.

In this manner, each of the cartridge memories 104A, 104B, 104C, 104Dand 104E of the magnetic tape cartridge 100 of FIGS. 1, 2, 3 and 4 maybe associated with a different partition 127A, 127B, 127C, etc. of thedata storage media of FIG. 5. The association may mean that informationregarding the data of the associated partition is contained in thestorage area. Additionally, the association may comprise informationcontained in the storage area that allows management of the partition bythe data storage drive or the host, including security and handling ofthe data.

Further, each logical partition could have its own physical owner, forexample, a user of the data storage drive or host. Thus, there could bemultiple owners of the physical data storage media or cartridge, eachunder management incorporating the information of a separate cartridgememory 104A, 104B, 104C, 104D and 104E.

With multiple cartridge memories servicing multiple partitions, theaccess to the tape cartridge is virtualized and the cartridge mayinterface with a storage area network (SAN) to which the data storagedevice is attached.

In a further embodiment, each of the cartridge memories 104A, 104B,104C, 104D and 104E is separately addressable.

In one embodiment, the communication interface of each of the cartridgememories comprises a radio frequency interface operating at a differentfrequency. For example, the communication interfaces 126 of FIG. 4comprise circuits 135 comprising an inductive antenna loop andcapacitor, wherein the capacitors have different capacitances to providethe different frequencies. The different frequencies would alternativelyallow simultaneous access to more than one or all of the cartridgememories by communication at all of the frequencies, or allow access toonly one cartridge memory at a particular frequency.

Alternatively, the communication interface 126 of each of the cartridgememories comprises a separately addressable digital interface. Forexample, each cartridge memory could have its own unique identifier. Byrequiring the identifier to be embedded in Input/Output (I/O) commands(for writing to and reading from the cartridge memory), reading andwriting to individual cartridge memories can be accomplished.

In a further embodiment, each of the cartridge memories comprisesprovision for a separate password to gain read and/or write access tothe memory system. The password(s) may be stored in the header 150 ofthe nonvolatile memory 131 of FIG. 6. The term “password” is intended toreference any suitable authentication algorithm to allow user access tothe information of the cartridge memory and/or the associated partition.

In a further embodiment, the memory system of each of the cartridgememories is configured to format the information to allow associationwith a subset the plurality of partitions 127A, 127B, 127C, etc. of thedata storage media. For example, information area 151 of the memorysystem of cartridge memory 104C may be associated with partitions 127Band 127C of FIG. 5.

In a still further embodiment, the memory system of at least one of thecartridge memories is configured to format the information to allowredundancy between at least a portion of the information of another ofthe cartridge memories. For example, information area 151 of the memorysystem of cartridge memory 104C may be associated with partition 127B,and information area 152 may duplicate at least a portion of theinformation area or of the header of cartridge memory 104B.Additionally, failover information may be provided in the header 150 orin the information area 151 such that a failure of one of the cartridgememories will cause a failover to the redundant information in anothercartridge memory and therefore not cause failure of the cartridge. Theprocessor 137 may have the necessary algorithms to make the failovertransparent to the user, and/or provide an error flag or message to theuser or an administrator.

Referring to FIG. 1, in accordance with an embodiment of the presentinvention, each of the cartridge memories 104A, 104B, 104C, 104D and104E is supported by the container 101 positioned such that thecommunication interface is simultaneously accessible externally of thedata storage cartridge 100, for example, by the interface 117 of thedata storage drive 115 of FIG. 3. Referring to FIG. 4, in oneembodiment, the cartridge memories are supported by the container suchthat the antenna 135 of each of the cartridges is oriented in a similardirection to allow the simultaneous access. In the example, each of thecartridge memories is oriented at substantially a 45° angle with respectto the bottom and side of the container 100 of FIG. 1 so as to allowsimultaneous access to all of the cartridge memories either by the datastorage drive or by a picker of an automated data storage library, whichare at relatively different angles with respect to a cartridge.

Referring to FIGS. 3 and 7, in accordance with the present invention,the control system 124, for example, of a data storage drive 115,provides the service of allocating portions of capacity of the datastorage media 105 of a data storage cartridge 100 to ones of thecartridge memories 104A, 104B, 104C, 104D and 104E of the data storagecartridge; and provides information defining the allocated portions tothe ones of the cartridge memories to which capacity is allocated. Theterm “ones of cartridge memories” refers to the allocation of capacityseparately to each of a plurality of the cartridge memories, up to andincluding all of the cartridge memories.

In one embodiment, a capacity limit is placed on each user's cartridgememory 104A, 104B, 104C, 104D and 104E. If the user desires additionalcapacity, the additional capacity, for example, is requested and may beallocated or purchased.

In one embodiment, illustrated in FIG. 7, capacity is allocated on writeoperations, since read operations relate to preexisting capacity.Starting from step 202, step 204 determines whether a write operation isbeing requested by a user. A user may comprise a system, an individual,or an entity, or any combination, having access to the data storagedrive and to the data storage media. If step 204 determines that theaccess is other than a write operation, for example a read operation,access is granted for the other process. For example, the access may befor a read operation, and, in step 206, the cartridge memory for therequesting user is accessed to determine the location on the media ofthe desired data, and, in step 208, the other operation is conducted.

If step 204 determines that the user is requesting a write operation,step 210 accesses the cartridge memory assigned to the user to ascertainthe present capacity allocated to the cartridge memory and to the user.If no cartridge memory was assigned to the user, that assignment may bearranged.

The capacity allocated to a user's cartridge memory 104A, 104B, 104C,104D and 104E, may be provided in one of two ways, logical partitionswhich may be allocated anywhere in the data storage media; or physicalpartitions which may be physically separate areas, such as a group ofparallel tracks, as defined above.

Step 212 determines whether sufficient capacity is allocated to thecartridge memory and the user for the desired write operation, oralternatively, for a desired total capacity allocation. If sufficientcapacity allocation has been made, and the allocation is logicalcapacity, the specific locations of the partitions may be made in step214. Step 214 accesses all of the cartridge memories to find thefree-space locations of the data storage media, and identifies specificlocations for the user's write operation or request. Alternatively, theallocations may comprise one or more physical portions of the capacity,and the cartridge memory metadata describes the physical partitions andstep 214 determines the free-space locations within the preexistingphysical partition(s). In step 216, the write operation is conducted bythe user, and the user's cartridge memory is updated with metadata ofthe location of the stored data.

If step 212 indicates that there is not sufficient capacity allocated tothe cartridge memory and the user for the desired request, for example,for a write operation, or alternatively, not sufficient capacityallocated for a requested total capacity allocation, step 220 determineswhether the data storage media has sufficient remaining capacityavailable to meet the request. If there is not sufficient remainingcapacity available in the data storage media 105, the process abends instep 224.

If step 220 determines that there is sufficient remaining capacity inthe data storage media 105 to meet the request, step 222 allocatesportion(s) of capacity of the data storage media of the data storagecartridge to the one of the cartridge memories to meet the request. Theallocated portion(s) of capacity may comprise one or more logicalpartitions or one or more physical partitions. In step 222, the user'scartridge metadata is updated with information defining the allocatedportions of capacity. In step 216, the write operation is conducted bythe user, and the user's cartridge memory is updated with metadata ofthe location of the stored data.

While the preferred embodiments of the present invention have beenillustrated in detail, it should be apparent that modifications andadaptations to those embodiments may occur to one skilled in the artwithout departing from the scope of the present invention as set forthin the following claims.

1. A computer program product comprising computer readable program codestored on at least one non-transitory computer readable medium,configured to be usable with at least one programmable computerprocessor to allocate portions of capacity of data storage media of adata storage cartridge, said data storage cartridge additionallycomprising a plurality of cartridge memories, comprising: computerreadable program code causing said at least one programmable computer toallocate at least portions of capacity of said data storage media of adata storage cartridge to ones of said cartridge memories of said datastorage cartridge; and computer readable program code causing said atleast one programmable computer to provide information defining saidallocated portions of said capacity to said ones of said cartridgememories to which capacity is allocated.
 2. The computer program productof claim 1, wherein said computer readable program code causes said atleast one programmable computer to assign said cartridge memories toseparate users.
 3. The computer program product of claim 2, wherein saidcomputer readable program code causes said at least one programmablecomputer to determine whether at least one additional unallocatedportion of said capacity of said data storage media is available; andto, in response to request, allocate at least an additional portion ofsaid available capacity of said data storage media to a cartridgememory.
 4. The computer program product of claim 3, wherein saidcomputer readable program code causes said at least one programmablecomputer to allocate said portions of capacity of said data storagemedia of said data storage cartridge as logical partitions of said datastorage media.
 5. The computer program product of claim 3, wherein saidcomputer readable program code causes said at least one programmablecomputer to allocate said portions of capacity of said data storagemedia of said data storage cartridge as physical partitions of said datastorage media.